package com.assignwork.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.core.tool.utils.DateUtil;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.util.Date;

/**
 * 工人信息(WorkerInfo)VO
 * @since 2024-02-04 13:07:09
 */
@Data
@ApiModel(value = "WorkerInfoVO", description = "工人信息")
public class WorkerInfoVO  {

    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    @ApiModelProperty(value = "姓名")
    private String realName;

    @ApiModelProperty(value = "昵称")
    private String nickname;

    @ApiModelProperty(value = "工号")
    private String jobNo;

    @ApiModelProperty(value = "性别")
    private String genderKey;
    private String genderName;

    @ApiModelProperty(value = "身份证号")
    private String idNumber;

    @ApiModelProperty(value = "手机号")
    private String phoneNumber;

    @ApiModelProperty(value = "生日")
    @JsonFormat(pattern = DateUtil.PATTERN_DATE)
    @DateTimeFormat(pattern = DateUtil.PATTERN_DATE)
    private LocalDate birthday;

    @ApiModelProperty(value = "岗位")
    private String postKey;
    private String postName;

    @ApiModelProperty(value = "队")
    private String groupKey;
    private String groupName;

    @ApiModelProperty(value = "组")
    private String teamKey;
    private String teamName;

    @ApiModelProperty(value = "员工类型")
    private String employeeType;
    private String employeeTypeName;

    @ApiModelProperty(value = "计薪类别")
    private String salaryType;
    private String salaryTypeName;

    private String shiftTypeKey;
    private String shiftTypeName;

    @ApiModelProperty(value = "备注")
    private String remark;

}

